import java.sql.*;
import java.util.Scanner;

public class Main {
public static void main(String[] args) {
    //m1();
//    m3();
  //  m4();
    m5();

}
   private static void m1() {
       Connection root = null;
       PreparedStatement preparedStatement = null;
       ResultSet resultSet = null;
       try {
           Class.forName("com.mysql.cj.jdbc.Driver");
           //创建连接
           String url = "jdbc:mysql://127.0.0.1:3306/jdbc?characterEncoding=utf-8";
           root = DriverManager.getConnection(url, "root", "050214");
           //if(root!=null){
           //   System.out.println("连接成功");
           //}
           //3.执行sql
           String sql = "SELECT*FROM user";
           preparedStatement = root.prepareStatement(sql);
           resultSet = preparedStatement.executeQuery();
           while (resultSet.next()) {
               int id = resultSet.getInt(1);
               String name = resultSet.getString(2);
               String pass = resultSet.getString(3);
               System.out.println(id + "------" + name + "-----" + pass);
           }


       } catch (ClassNotFoundException e) {
           throw new RuntimeException(e);
       } catch (SQLException e) {
           throw new RuntimeException(e);
       } finally {
           try {
               if (resultSet != null) {
                   resultSet.close();
               }
               if (preparedStatement != null) {
                   preparedStatement.close();
               }
               if (root != null) {
                   root.close();
               }
           } catch (SQLException e) {
               throw new RuntimeException(e);
           }

       }
   }
       //键盘录入
       private static void m2 () {
           //键盘录入
           Scanner scanner = new Scanner(System.in);
           System.out.println("请输入要查询的姓名：");
           String name = scanner.nextLine();
           Connection root = null;
           PreparedStatement preparedStatement = null;
           ResultSet resultSet = null;
           //jdbc步骤
           //1.加载驱动
           try {
               Class.forName("com.mysql.cj.jdbc.Driver");
               //2.创建连接
               String url = "jdbc:mysql://127.0.0.1:3306/jdbc?characterEncoding=utf-8";
               root = DriverManager.getConnection(url, "root", "050214");
               //if(root !=null){
               // System.out.println("连接成功");
               //}

               //3.写sql
               String sql = "select * from user where name like ?";
               //4.预编译sql
               preparedStatement = root.prepareStatement(sql);
               //设置参数
               preparedStatement.setString(1, "%" + name + "%");
               //5.执行sql
               resultSet = preparedStatement.executeQuery();
               //6.遍历结果
               while (resultSet.next()) {
                   int id = resultSet.getInt(1);
                   String username = resultSet.getString(2);
                   String pass = resultSet.getString(3);
                   System.out.println(id + "-----" + username + "-----" + pass);
               }

           } catch (ClassNotFoundException e) {
               throw new RuntimeException(e);
           } catch (SQLException e) {
               throw new RuntimeException(e);
           } finally {
               //7.关闭资源

               try {
                   if (resultSet != null) {
                       resultSet.close();
                   }
                   if (preparedStatement != null) {
                       preparedStatement.close();
                   }
                   if (root != null) {
                       root.close();
                   }
               } catch (SQLException e) {
                   throw new RuntimeException(e);
               }
           }
       }

    private static void m3(){
        Connection root =null;
        PreparedStatement preparedStatement =null;

        //jdbc步骤
        //1.加载驱动
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            //2.创建连接
            String url="jdbc:mysql://127.0.0.1:3306/jdbc?characterEncoding=utf-8";
            root = DriverManager.getConnection(url, "root", "050214");
            //if(root !=null){
            // System.out.println("连接成功");
            //}

            //3.写sql
            String sql="insert into user (name,pass) values(?,?)";
            //4.预编译sql
            preparedStatement = root.prepareStatement(sql);
            //设置参数
            preparedStatement.setString(1,"小明");
            preparedStatement.setString(2,"123456");
            //5.执行sql
            int result = preparedStatement.executeUpdate();//执行增加
            if(result>0){
                System.out.println("增加成功");
            }else{
                System.out.println("增加失败");
            }

        } catch (ClassNotFoundException e) {
            throw new RuntimeException(e);
        } catch (SQLException e) {
            throw new RuntimeException(e);
        }finally{
            //7.关闭资源

            try {

                if(preparedStatement !=null){
                    preparedStatement.close();}
                if(root !=null){
                    root.close();}
            } catch (SQLException e) {
                throw new RuntimeException(e);
            }

        }
    }
    private static void m4(){
        Connection root =null;
        PreparedStatement preparedStatement =null;

        //jdbc步骤
        //1.加载驱动
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            //2.创建连接
            String url="jdbc:mysql://127.0.0.1:3306/jdbc?characterEncoding=utf-8";
            root = DriverManager.getConnection(url, "root", "050214");
            //if(root !=null){
            // System.out.println("连接成功");
            //}

            String sql="update user set name = ?,pass = ? where id = ? ";
            //4.预编译sql
            preparedStatement = root.prepareStatement(sql);
            //设置参数
            preparedStatement.setString(1,"王小明");
            preparedStatement.setString(2,"888");
            preparedStatement.setInt(3,1);
            //5.执行sql
            int result = preparedStatement.executeUpdate();//执行增加
            if(result>0){
                System.out.println("修改成功");
            }else{
                System.out.println("修改失败");
            }

        } catch (ClassNotFoundException e) {
            throw new RuntimeException(e);
        } catch (SQLException e) {
            throw new RuntimeException(e);
        }finally{
            //7.关闭资源

            try {

                if(preparedStatement !=null){
                    preparedStatement.close();}
                if(root !=null){
                    root.close();}
            } catch (SQLException e) {
                throw new RuntimeException(e);
            }

        }
    }
        private static void m5(){
            Connection root =null;
            PreparedStatement preparedStatement =null;

            //jdbc步骤
            //1.加载驱动
            try {
                Class.forName("com.mysql.cj.jdbc.Driver");
                //2.创建连接
                String url="jdbc:mysql://127.0.0.1:3306/jdbc?characterEncoding=utf-8";
                root = DriverManager.getConnection(url, "root", "050214");
                //if(root !=null){
                // System.out.println("连接成功");
                //}

                //3.写sql
                String sql="delete from user where id = ?";
                //4.预编译sql
                preparedStatement = root.prepareStatement(sql);
                preparedStatement.setObject(1,1);
                //5.执行sql
                int result = preparedStatement.executeUpdate();//执行增加
                if(result>0){
                    System.out.println("删除成功");
                }else{
                    System.out.println("删除失败");
                }

            } catch (ClassNotFoundException e) {
                throw new RuntimeException(e);
            } catch (SQLException e) {
                throw new RuntimeException(e);
            }finally{
                //7.关闭资源

                try {

                    if(preparedStatement !=null){
                        preparedStatement.close();}
                    if(root !=null){
                        root.close();}
                } catch (SQLException e) {
                    throw new RuntimeException(e);
                }

            }
        }

    }
